package com.pipi.sso.dao.query;


import com.pipi.sso.dao.support.BaseCriteria;
import com.pipi.sso.dao.support.BaseQuery;
import org.apache.commons.lang.builder.ReflectionToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

import java.io.Serializable;

import java.util.Date;
import java.util.List;

public class DormitoryBuildingQuery extends BaseQuery implements Serializable {
    private static final long serialVersionUID = 1L;

    public DormitoryBuildingQuery() {
        super();
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        super.oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    /**
     * This class corresponds to the database table dorm_dormitory_building
     */
         protected abstract static class GeneratedCriteria extends BaseCriteria {

        protected GeneratedCriteria() {
            super();
        }

        public Criteria andDormitoryBuildingIdIsNull() {
            addCriterion("dormitory_building_id is null");
            return (Criteria) this;
        }

        public Criteria andDormitoryBuildingIdIsNotNull() {
            addCriterion("dormitory_building_id is not null");
            return (Criteria) this;
        }

        public Criteria andDormitoryBuildingIdEqualTo(Long value) {
            addCriterion("dormitory_building_id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andDormitoryBuildingIdNotEqualTo(Long value) {
            addCriterion("dormitory_building_id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria anDormitoryBuildingIdGreaterThan(Long value) {
            addCriterion("dormitory_building_id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andDormitoryBuildingIdGreaterThanOrEqualTo(Long value) {
            addCriterion("dormitory_building_id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andDormitoryBuildingIdLessThan(Long value) {
            addCriterion("dormitory_building_id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andDormitoryBuildingIdLessThanOrEqualTo(Long value) {
            addCriterion("dormitory_building_id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andDormitoryBuildingIdIn(List<Long> values) {
            addCriterion("dormitory_building_id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andDormitoryBuildingIdNotIn(List<Long> values) {
            addCriterion("dormitory_building_id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andDormitoryBuildingIdBetween(Long value1, Long value2) {
            addCriterion("dormitory_building_id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andDormitoryBuildingIdNotBetween(Long value1, Long value2) {
            addCriterion("dormitory_building_id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andGmtCreateIsNull() {
            addCriterion("gmt_create is null");
            return (Criteria) this;
        }

        public Criteria andGmtCreateIsNotNull() {
            addCriterion("gmt_create is not null");
            return (Criteria) this;
        }

        public Criteria andGmtCreateEqualTo(Date value) {
            addCriterion("gmt_create =", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateNotEqualTo(Date value) {
            addCriterion("gmt_create <>", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateGreaterThan(Date value) {
            addCriterion("gmt_create >", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateGreaterThanOrEqualTo(Date value) {
            addCriterion("gmt_create >=", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateLessThan(Date value) {
            addCriterion("gmt_create <", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateLessThanOrEqualTo(Date value) {
            addCriterion("gmt_create <=", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateIn(List<Date> values) {
            addCriterion("gmt_create in", values, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateNotIn(List<Date> values) {
            addCriterion("gmt_create not in", values, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateBetween(Date value1, Date value2) {
            addCriterion("gmt_create between", value1, value2, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateNotBetween(Date value1, Date value2) {
            addCriterion("gmt_create not between", value1, value2, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedIsNull() {
            addCriterion("gmt_modified is null");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedIsNotNull() {
            addCriterion("gmt_modified is not null");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedEqualTo(Date value) {
            addCriterion("gmt_modified =", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedNotEqualTo(Date value) {
            addCriterion("gmt_modified <>", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedGreaterThan(Date value) {
            addCriterion("gmt_modified >", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedGreaterThanOrEqualTo(Date value) {
            addCriterion("gmt_modified >=", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedLessThan(Date value) {
            addCriterion("gmt_modified <", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedLessThanOrEqualTo(Date value) {
            addCriterion("gmt_modified <=", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedIn(List<Date> values) {
            addCriterion("gmt_modified in", values, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedNotIn(List<Date> values) {
            addCriterion("gmt_modified not in", values, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedBetween(Date value1, Date value2) {
            addCriterion("gmt_modified between", value1, value2, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedNotBetween(Date value1, Date value2) {
            addCriterion("gmt_modified not between", value1, value2, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andBuildingNoIsNull() {
            addCriterion("building_no is null");
            return (Criteria) this;
        }

        public Criteria andBuildingNoIsNotNull() {
            addCriterion("building_no is not null");
            return (Criteria) this;
        }

        public Criteria andBuildingNoEqualTo(String value) {
            addCriterion("building_no =", value, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andBuildingNoNotEqualTo(String value) {
            addCriterion("building_no <>", value, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andBuildingNoGreaterThan(String value) {
            addCriterion("building_no >", value, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andBuildingNoGreaterThanOrEqualTo(String value) {
            addCriterion("building_no >=", value, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andBuildingNoLessThan(String value) {
            addCriterion("building_no <", value, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andBuildingNoLessThanOrEqualTo(String value) {
            addCriterion("building_no <=", value, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andBuildingNoLike(String value) {
            addCriterion("building_no like", value, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andBuildingNoNotLike(String value) {
            addCriterion("building_no not like", value, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andBuildingNoIn(List<String> values) {
            addCriterion("building_no in", values, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andBuildingNoNotIn(List<String> values) {
            addCriterion("building_no not in", values, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andBuildingNoBetween(String value1, String value2) {
            addCriterion("building_no between", value1, value2, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andBuildingNoNotBetween(String value1, String value2) {
            addCriterion("building_no not between", value1, value2, "buildingNo");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberIsNull() {
            addCriterion("dormitory_number is null");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberIsNotNull() {
            addCriterion("dormitory_number is not null");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberEqualTo(Integer value) {
            addCriterion("dormitory_number =", value, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberNotEqualTo(Integer value) {
            addCriterion("dormitory_number <>", value, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberGreaterThan(Integer value) {
            addCriterion("dormitory_number >", value, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("dormitory_number >=", value, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberLessThan(Integer value) {
            addCriterion("dormitory_number <", value, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberLessThanOrEqualTo(Integer value) {
            addCriterion("dormitory_number <=", value, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberLike(Integer value) {
            addCriterion("dormitory_number like", value, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberNotLike(Integer value) {
            addCriterion("dormitory_number not like", value, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberIn(List<Integer> values) {
            addCriterion("dormitory_number in", values, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberNotIn(List<Integer> values) {
            addCriterion("dormitory_number not in", values, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberBetween(Integer value1, Integer value2) {
            addCriterion("dormitory_number between", value1, value2, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andDormitoryNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("dormitory_number not between", value1, value2, "dormitoryNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberIsNull() {
            addCriterion("layer_number is null");
            return (Criteria) this;
        }

        public Criteria andLayerNumberIsNotNull() {
            addCriterion("layer_number is not null");
            return (Criteria) this;
        }

        public Criteria andLayerNumberEqualTo(Integer value) {
            addCriterion("layer_number =", value, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberNotEqualTo(Integer value) {
            addCriterion("layer_number <>", value, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberGreaterThan(Integer value) {
            addCriterion("layer_number >", value, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("layer_number >=", value, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberLessThan(Integer value) {
            addCriterion("layer_number <", value, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberLessThanOrEqualTo(Integer value) {
            addCriterion("layer_number <=", value, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberLike(Integer value) {
            addCriterion("layer_number like", value, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberNotLike(Integer value) {
            addCriterion("layer_number not like", value, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberIn(List<Integer> values) {
            addCriterion("layer_number in", values, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberNotIn(List<Integer> values) {
            addCriterion("layer_number not in", values, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberBetween(Integer value1, Integer value2) {
            addCriterion("layer_number between", value1, value2, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andLayerNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("layer_number not between", value1, value2, "layerNumber");
            return (Criteria) this;
        }

        public Criteria andIsDeletedIsNull() {
            addCriterion("is_deleted is null");
            return (Criteria) this;
        }

        public Criteria andIsDeletedIsNotNull() {
            addCriterion("is_deleted is not null");
            return (Criteria) this;
        }

        public Criteria andIsDeletedEqualTo(Integer value) {
            addCriterion("is_deleted =", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedNotEqualTo(Integer value) {
            addCriterion("is_deleted <>", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedGreaterThan(Integer value) {
            addCriterion("is_deleted >", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_deleted >=", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedLessThan(Integer value) {
            addCriterion("is_deleted <", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedLessThanOrEqualTo(Integer value) {
            addCriterion("is_deleted <=", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedLike(Integer value) {
            addCriterion("is_deleted like", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedNotLike(Integer value) {
            addCriterion("is_deleted not like", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedIn(List<Integer> values) {
            addCriterion("is_deleted in", values, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedNotIn(List<Integer> values) {
            addCriterion("is_deleted not in", values, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedBetween(Integer value1, Integer value2) {
            addCriterion("is_deleted between", value1, value2, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedNotBetween(Integer value1, Integer value2) {
            addCriterion("is_deleted not between", value1, value2, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andHandlerIsNull() {
            addCriterion("handler is null");
            return (Criteria) this;
        }

        public Criteria andHandlerIsNotNull() {
            addCriterion("handler is not null");
            return (Criteria) this;
        }

        public Criteria andHandlerEqualTo(String value) {
            addCriterion("handler =", value, "handler");
            return (Criteria) this;
        }

        public Criteria andHandlerNotEqualTo(String value) {
            addCriterion("handler <>", value, "handler");
            return (Criteria) this;
        }

        public Criteria andHandlerGreaterThan(String value) {
            addCriterion("handler >", value, "handler");
            return (Criteria) this;
        }

        public Criteria andHandlerGreaterThanOrEqualTo(String value) {
            addCriterion("handler >=", value, "handler");
            return (Criteria) this;
        }

        public Criteria andHandlerLessThan(String value) {
            addCriterion("handler <", value, "handler");
            return (Criteria) this;
        }

        public Criteria andHandlerLessThanOrEqualTo(String value) {
            addCriterion("handler <=", value, "handler");
            return (Criteria) this;
        }

        public Criteria andHandlerLike(String value) {
            addCriterion("handler like", value, "handler");
            return (Criteria) this;
        }

        public Criteria andHandlerNotLike(String value) {
            addCriterion("handler not like", value, "handler");
            return (Criteria) this;
        }

        public Criteria andHandlerIn(List<String> values) {
            addCriterion("handler in", values, "handler");
            return (Criteria) this;
        }

        public Criteria andHandlerNotIn(List<String> values) {
            addCriterion("handler not in", values, "handler");
            return (Criteria) this;
        }

        public Criteria andHandlerBetween(String value1, String value2) {
            addCriterion("handler between", value1, value2, "handler");
            return (Criteria) this;
        }

        public Criteria andHandlerNotBetween(String value1, String value2) {
            addCriterion("handler not between", value1, value2, "handler");
            return (Criteria) this;
        }

        public Criteria andGenderIsNull() {
            addCriterion("gender is null");
            return (Criteria) this;
        }

        public Criteria andGenderIsNotNull() {
            addCriterion("gender is not null");
            return (Criteria) this;
        }

        public Criteria andGenderEqualTo(Integer value) {
            addCriterion("gender =", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderNotEqualTo(Integer value) {
            addCriterion("gender <>", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderGreaterThan(Integer value) {
            addCriterion("gender >", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderGreaterThanOrEqualTo(Integer value) {
            addCriterion("gender >=", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderLessThan(Integer value) {
            addCriterion("gender <", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderLessThanOrEqualTo(Integer value) {
            addCriterion("gender <=", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderLike(Integer value) {
            addCriterion("gender like", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderNotLike(Integer value) {
            addCriterion("gender not like", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderIn(List<Integer> values) {
            addCriterion("gender in", values, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderNotIn(List<Integer> values) {
            addCriterion("gender not in", values, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderBetween(Integer value1, Integer value2) {
            addCriterion("gender between", value1, value2, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderNotBetween(Integer value1, Integer value2) {
            addCriterion("gender not between", value1, value2, "gender");
            return (Criteria) this;
        }

    }

    /**
     * This class corresponds to the database table dorm_dormitory_building
    */
    public  static class Criteria extends GeneratedCriteria{
        protected Criteria() {
            super();
        }
    }



    @Override
    public String toString(){
        return ReflectionToStringBuilder.toString(this, ToStringStyle.DEFAULT_STYLE);
    }
}